#pragma once
#include "EnemyUnit.h"
#include "../SGD Wrappers/SGD_Listener.h"
#include "../SGD Wrappers/SGD_Handle.h"

class SecurityCamera : public EnemyUnit , public SGD::Listener
{
public:
	SecurityCamera();
	~SecurityCamera();

	virtual void Update(float dt)	 override;
//	virtual void Render()			 override;
	virtual void HandleEvent(const SGD::Event* pEvent);
	virtual void HandleCollision(const IBase* pOther) override;
	void RetrieveBehavior(std::string name);
	virtual int GetType(void) const override { return OBJ_CAMERA; }

	bool IsThermal(void) const { return m_bIsThermal; }
	void SetThermal(bool isThermal) { m_bIsThermal = isThermal; }
	void SetShutDownEvent(const char* _shutDownEvent) { ShutDownEvent = _shutDownEvent; }


private:

	std::string ShutDownEvent;
	bool m_bIsThermal = false;
	BaseBehavior* currBehavior = nullptr;
	bool isActive = true;

	SGD::HAudio* turnSound = nullptr;
	SGD::HVoice voice = SGD::INVALID_HANDLE;
	friend class BaseBehavior;



};

